home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Grab Bag
/
Shareware Grab Bag.iso
/
001
/
allocate.aqm
/
allocate.asm
Wrap
Assembly Source File
|
1985-11-22
|
1KB
|
68 lines
PAGE 55,132
;Program Name: ALLOCATE.ASM
;Author: William L. Colsher
;Date Written: May 19, 1984
;Purpose: This program creates a file and writes 5K nulls to it.
STACK SEGMENT PARA STACK 'STACK'
DB 64 DUP('STACK ')
STACK ENDS
DATA SEGMENT PARA PUBLIC 'DATA'
FNAME DB 'PREALLOC.DAT',0
HANDLE DW 0
NULLS DB 256 DUP(0)
EOFMARK DB 1AH
DATA ENDS
CODE SEGMENT PARA PUBLIC 'CODE'
ALLOCATE PROC FAR
ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA
;Establish DOS return and data addressability
PUSH DS
SUB AX,AX
PUSH AX
MOV AX,DATA
MOV DS,AX
MOV ES,AX
;Set up DOS call to create a new file
MOV AH,3CH ;Create file
MOV DX,OFFSET FNAME
MOV CX,0 ;Attribute
INT 21H ;Do it!
MOV HANDLE,AX
;Now we'll write 5k of nulls to the file
MOV CX,20 ;Repeat count
MORE: PUSH CX ;Save it
MOV BX,HANDLE ;File pointer
MOV DX,OFFSET NULLS
MOV CX,256 ;How namy
MOV AH,40H ;Function 'Write'
INT 21H
POP CX ;Get back count
LOOP MORE
;Now we'll close the file
MOV BX,HANDLE
MOV AH,3EH
INT 21H
;And return to DOS
RET
ALLOCATE ENDP
CODE ENDS
END ALLOCATE